Correlation Analysis Tool📈 What Does It Do?
Correlation Calculation: Measures the correlation between a selected asset (Asset 1) and up to four additional assets (Asset 2, Asset 3, Asset 4, Asset 5).
User Inputs: Allows you to define the primary asset and up to four comparison assets, as well as the period for correlation calculations.
Correlation Matrix: Displays a matrix of correlation coefficients as a text label on the chart.
🔍 How It Works
Inputs: Enter the symbols for Asset 1 (main asset) and up to four other assets for comparison.
Correlation Period: Specify the period over which the correlations are calculated.
Calculations: Computes log returns for each asset and calculates the correlation coefficients.
Display: Shows a textual correlation matrix at the top of the chart with percentage values.
⚙️ Features
Customizable Assets: Input symbols for one primary asset and up to four other assets.
Flexible Period: Choose the period for correlation calculation.
Correlation Coefficients: Outputs correlation values for all asset pairs.
Textual Correlation Matrix: Provides a correlation matrix with percentage values for quick reference.
🧩 How to Use
Add the Script: Apply the script to any asset’s chart.
Set Asset Symbols: Enter the symbols for Asset 1 and up to four other assets.
Adjust Correlation Period: Define the period for which correlations are calculated.
Review Results: Check the correlation matrix displayed on the chart for insights.
🚨 Limitations
Historical Data Dependency: Correlations are based on historical data and might not reflect future market conditions.
No Visual Plots Yet: This script does not include visual plots; it only provides a textual correlation matrix.
💡 Best Ways To Use
Sector Comparison: Compare assets within the same sector or industry for trend analysis.
Diversification Analysis: Use the correlations to understand how different assets might diversify or overlap in your portfolio.
Strategic Decision Making: Utilize correlation data for making informed investment decisions and portfolio adjustments.
📜 Disclaimer
This script is for educational and informational purposes only. Please conduct your own research and consult with a financial advisor before making investment decisions. The author is not responsible for any losses or damages resulting from the use of this script.
Recherche dans les scripts pour "the script"
M Farm Scalper v4"M Farm Scalper v2" Trading Indicator on TradingView
Overview
This script uses a combination of indicators to help attempt the best view of when to exit and enter markets. The author has seen that usage of multiple indicators combined provided value and create profit.
1. Improved Signal Reliability
Combining swing highs and lows with Swing Failure Patterns (SFP) increases the reliability of the signals. Each indicator contributes different insights into market behavior:
Swing Highs and Lows: These help identify key support and resistance levels.
Swing Failure Patterns: These provide early warning signs of potential trend reversals when price fails to maintain new highs or lows.
2. Comprehensive Market Analysis
Using multiple indicators allows for a more comprehensive analysis of market conditions:
Trend Analysis: Swing highs and lows can indicate the overall trend direction.
Reversal Signals: SFPs highlight potential reversal points where the current trend might be weakening.
3. Enhanced Signal Strength
The script not only detects basic SFPs but also evaluates their strength by considering the number of failures within a specified range:
Strength of SFPs: By quantifying the strength of SFPs, the script can distinguish between weak and strong reversal signals. This helps traders prioritize stronger signals, reducing false positives.
4. Visual and Alert-based Trading
The combined use of these indicators improves both visual analysis and automated alert systems:
Visual Representation: Plotting different characters for swing points and SFPs makes it easier for traders to quickly interpret the chart.
Alerts: Automated alerts for specific conditions (like swing high/low failures) enable traders to respond promptly to significant market movements without constantly monitoring the charts.
5. Flexibility and Customization
The script includes parameters that allow traders to customize the behavior of the indicators based on their trading preferences:
Customization of Lookback Period (swingHistory): Traders can adjust this to fine-tune the sensitivity of swing point detection.
Selective Plotting (plotSwings, plotFirstSFPOnly, plotStrongerSFPs): These options provide flexibility in how much information is displayed on the chart, preventing clutter and focusing on relevant signals.
6. Minimized Noise and False Signals
By using a combination of indicators, the strategy aims to filter out market noise and reduce the likelihood of false signals:
Confluence of Signals: When multiple indicators align to provide a signal, it generally indicates a higher probability setup, thus reducing the chances of acting on false or less significant market moves.
7. Contextual Market Understanding
Combining indicators offers a more contextual understanding of market dynamics:
Market Context: Identifying both support/resistance levels (via swing points) and potential trend reversals (via SFPs) provides a fuller picture of market conditions, allowing traders to make more informed decisions.
Conclusion
Combining multiple indicators in the "M Farm Scalper v2" script is a strategic choice designed to enhance the robustness, reliability, and actionable quality of the trading signals. This approach leverages the strengths of each indicator to provide a well-rounded, comprehensive trading tool that aids traders in identifying high-probability trade setups and minimizing the risk of false signals.
ChatGPT can make mistakes. Check important info.
Introducing "M Farm Scalper v2" – an advanced proprietary trading indicator designed exclusively for the TradingView platform. This tool excels in identifying key swing points and Swing Failure Patterns (SFPs), offering traders unique visual and auditory cues to enhance decision-making. It's particularly tailored for the 5-minute timeframe but adaptable to suit a variety of trading styles.
Unique Features
Advanced Swing Point Detection: Leverages a sophisticated algorithm to detect swing highs and lows, integrating predictive analytics to forecast potential market reversals.
Dynamic Swing Failure Pattern Analysis: Employs a real-time analysis combining price action and volume data to pinpoint bullish and bearish reversal opportunities with high precision.
Innovative Visual and Auditory Cues: Features unique, easy-to-understand icons such as animals and fruits to represent market signals, simplifying complex market data into actionable insights.
Functionality
"M Farm Scalper v2" is crafted to deliver:
Configurable Parameters: Users can adjust settings including Swing History, visibility of swing points, and sensitivity for detecting stronger SFPs, making it highly customizable to fit individual trading strategies.
Clear, Actionable Outputs: Designed to offer straightforward visual signals directly on the trading chart, facilitating quick and effective decision-making.
Compliance and Originality
Original Integration of Features: This script combines several analytical techniques into a cohesive unit that surpasses the capabilities of existing open-source scripts in both originality and functionality.
Justification for Closed-Source: The proprietary nature of the algorithms and the unique method of data presentation are maintained as closed-source to protect the integrity and effectiveness of the tool, providing users with a reliable competitive advantage.
Application Instructions
To apply "M Farm Scalper v2," add it from the TradingView "Indicators" menu by searching for our script. Adjust the customizable settings as per your trading requirements and observe how the indicator’s outputs make market dynamics easy to interpret and act upon.
Chart Presentation
The accompanying chart is presented cleanly, focusing solely on the outputs of "M Farm Scalper v2." Each visual cue is annotated to demonstrate its relevance, ensuring that traders can easily understand and utilize the information provided without distraction.
Conclusion
"M Farm Scalper v2" is not just an indicator but an essential trading tool for those seeking precision and efficiency in their trading operations. Its advanced features and user-friendly design make it a valuable addition to any trader’s arsenal, especially for those involved in scalping and short-term trading.
Protected script
This script is published closed-source but you may use it freely. You can favorite it to use it on a chart. You cannot view or modify its source code.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
BitBell - EMA PullBack RSI EXO
🔵 Introduction
Version 1.1
This is a Pine 5 trend following strategy. It has a four strategy with several alerts and signals. The design intent is to produce a commercial grade signal generator that can be adapted to any symbol in cryptocurrency and only 1H Chart. Ideally, the script is reliable enough to be the basis of an automated trading system web-hooked to a server with API access to crypto brokerages. The strategy can be run in three different modes: long, short and bidirectional.
As a trend following strategy, the behavior of the script is to buy on strength and sell on weakness. As such the trade orders maintain its directional bias according to price pressure. What you will see on the chart is long positions on the left side of the mountain and short on the right. Long and short positions are not intermingled as long as there exists a detectable trend. This is extremely beneficial feature in long running bull or bear markets. The script uses multiple setups to avoid the situation where you got in on the trend, took a small profit but couldn’t get back in because the logic is waiting for a pullback or some other intricate condition.
Deep draw-downs are a characteristic of trend following systems and this system is no different. However, this script makes use of the TradingView pyramid feature with three NPUs to find better place and even you can change drop percentage in settings for another trigger, accessible from the properties tab.
When trend market break it will stop the trade and usually it takes 2-4 percent loss but don't worry it has prefect money management and you can use it for Futures market and even Spot market.
🔵 Design
This script uses twelve indicators on two time frames. The chart (primary) interval and one higher time frame which is based on the primary. The higher time frame identifies the trend for which the primary will trade. I’ve tried to keep the higher time frame around five times greater than the primary. The original trading algorithms are a port from a much larger program on another trading platform. I’ve converted some of the statistical functions to use standard indicators available on TradingView. The setups make heavy use of the Hull Moving Average in conjunction with EMAs that form the Bill Williams Alligator as described in his book “New Trading Dimensions” Chapter 3. Lag between the Hull and the EMAs form the basis of the entry and exit points. The alligator itself is used to identify the trend main body.
The entire script is around 740 lines of Pine code which is the maximum incidental size given the TradingView limits: local scopes, run-time duration and compile time. I’ve been working on this script for over a year and have tested it on various instruments stock crypto. It performs well on higher liquidity markets that have at least a year of historical data. Though it can be configured to work on any interval between 15 minutes and 4 hour, trend trading is generally a longer term paradigm. For day trading the 10 to 15 minute interval will allow you to catch momentum breakouts. For intraweek trades 30 minutes to 1 hour should give you a trade every other a day.
Inputs to the script use cone centric measurements in effort to avoid exposing adjustments to the various internal indicators. The goal was to keep the inputs relevant to the actual trade entry and exit locations as opposed to a series of MA input values and the like. As a result the strategy exposes over 12 inputs grouped into long or short sections. Inputs are available for the usual minimum profit and stop-loss as well as trade, modes, presets, reports and lots of calibrations. The inputs are numerous, I’m aware. Unfortunately, at this time, TradingView does not offer any other method to get data in the script. The usual initialization files such as cnf, cfg, ini, json and xml files are currently unsupported.
Example configurations for various instruments along with a detailed PDF user manual is available.
it has no repaint i guaranty this, and you can have 10 days free with comment and check it by yourself
One issue that comes up when comparing the strategy with the study is that the strategy trades show on the chart one bar later than the study. This problem is due to the fact that “strategy.entry()” and “strategy_close()” do not execute on the same bar called. The study, on the other hand, has no such limitation since there are no position routines. However, alerts that are subsequently fired off when triggered in the study are dispatched from the TradingView servers one bar later from the study plot. Therefore the alert you actually receive on your cell phone matches the strategy plot but is one bar later than the study plot.
Please be aware that the data source matters. Cryptocurrency has no central tick repository so each exchange supplies TradingView its feed. Even though it is the same symbol the quality of the data and subsequently the bars that are supplied to the chart varies with the exchange. This script will absolutely produce different results on different data feeds of the same symbol. Be sure to backtest this script on the same data you intend to receive alerts for. Any example settings I share with you will always have the exchange name used to generate the test results.
🟡 Usage
It sends long and short signals with pyramid orders of up to 3, meaning that the strategy can trigger up to 3 orders in the same direction. Good risk and money management.
It's important to note that the strategy combines 2 systems working together (Long and LongX). Let’s describe the specific features of this strategy.
🔵 If Findes Supports And Ressitances And Trend Lines As Best As It Can, And You Can See:
🟢 Frist Simple Long Condition = It Look At The Trend Wait For RSI Cross 30 Number Then Ckeck Risk To Reward, check something else such as divergence:
🟢 Another Long Example:
🔴 Frist Simple Short Condition = It Look At The Trend Wait For RSI Cross 70 Number Then Ckeck Risk To Reward, check something else such as divergence:
🔴 Another Short Example:
The following steps provide a very brief set of instructions that will get you started but will most certainly not produce the best backtest. A trading system that you are willing to risk your hard earned capital will require a well crafted configuration that involves time, expertise and clearly defined goals. As previously mentioned, I have several example configs that I use for my own trading that I can share with you along with a PDF which describes each input in detail. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
The input dialog box contains over 12 inputs, There are four options must to be configured: Choose Target, side, Choose Settings, Money Management,and settings that apply to both. The following steps address these four main options only.
Money Management System For Leverage 10:
Bot Finds Last Lower Low And Calculate Distance From Entry Price, Then Cross It To Initial Capitan And Cross Leverage =>
Position_Size = (((1.64) * (initial Capital)) * (leverage))
And Check Dominances Too For Getting Best Money Management Result
🔵 Settings
* Side, You Can Set Long Or Short Or Both.
* Choose Target, You Can Set One Target Or All Targets.
* Money Management, You Can ON Or OFF It, With OFF You Can USE It For SPOT Trades.
* Choose Settings, In This Field You Can Set Mathematical Optimization, Ddepends On Which Pair You USE.
* Clear With Daily PullBack?, With This Check Box You Can Clear Signals With Daily PullBack.
* Long X, You Can Set Long Leverage.
* Short X, You Can Set Short Leverage.
* Second Order X, You Can Set Pyramiding Leverage.
* Target Long, You Can Set Percent For Long Target.
* Target Short, You Can Set Percent For Short Target.
* Short Martin Percent, You Can Set Short Martingale Percent.
* Long Martin Percent, You Can Set Long Martingale Percent.
🟡 Pyraming 3
🟡 Commission Is 0.065 %
🟡 Slippage Is 10 ticks
🔴Only Use For 1 Hour Chart
🔴 CONCLUSION
We believe that success lies in the association of the user with the indicator, opposed to many traders who have the perspective that the indicator itself can make them become profitable. The reality is much more complicated than that.
The aim is to provide an indicator comprehensive, customizable, and intuitive enough that any trader can be led to understand this truth and develop an actionable perspective of technical indicators as support tools for decision making.
🔴 RISK DISCLAIMER
Trading is risky & most day traders lose money. All content, tools, scripts, articles, & education provided by BitBell are purely for informational & educational purposes only. Past performance does not guarantee future results.
Advanced Dynamic Threshold RSI [Elysian_Mind]Advanced Dynamic Threshold RSI Indicator
Overview
The Advanced Dynamic Threshold RSI Indicator is a powerful tool designed for traders seeking a unique approach to RSI-based signals. This indicator combines traditional RSI analysis with dynamic threshold calculation and optional Bollinger Bands to generate weighted buy and sell signals.
Features
Dynamic Thresholds: The indicator calculates dynamic thresholds based on market volatility, providing more adaptive signal generation.
Performance Analysis: Users can evaluate recent price performance to further refine signals. The script calculates the percentage change over a specified lookback period.
Bollinger Bands Integration: Optional integration of Bollinger Bands for additional confirmation and visualization of potential overbought or oversold conditions.
Customizable Settings: Traders can easily customize key parameters, including RSI length, SMA length, lookback bars, threshold multiplier, and Bollinger Bands parameters.
Weighted Signals: The script introduces a unique weighting mechanism for signals, reducing false positives and improving overall reliability.
Underlying Calculations and Methods
1. Dynamic Threshold Calculation:
The heart of the Advanced Dynamic Threshold RSI Indicator lies in its ability to dynamically calculate thresholds based on multiple timeframes. Let's delve into the technical details:
RSI Calculation:
For each specified timeframe (1-hour, 4-hour, 1-day, 1-week), the Relative Strength Index (RSI) is calculated using the standard 14-period formula.
SMA of RSI:
The Simple Moving Average (SMA) is applied to each RSI, resulting in the smoothing of RSI values. This smoothed RSI becomes the basis for dynamic threshold calculations.
Dynamic Adjustment:
The dynamically adjusted threshold for each timeframe is computed by adding a constant value (5 in this case) to the respective SMA of RSI. This dynamic adjustment ensures that the threshold reflects changing market conditions.
2. Weighted Signal System:
To enhance the precision of buy and sell signals, the script introduces a weighted signal system. Here's how it works technically:
Signal Weighting:
The script assigns weights to buy and sell signals based on the crossover and crossunder events between RSI and the dynamically adjusted thresholds. If a crossover event occurs, the weight is set to 2; otherwise, it remains at 1.
Signal Combination:
The weighted buy and sell signals from different timeframes are combined using logical operations. A buy signal is generated if the product of weights from all timeframes is equal to 2, indicating alignment across timeframe.
3. Experimental Enhancements:
The Advanced Dynamic Threshold RSI Indicator incorporates experimental features for educational exploration. While not intended as proven strategies, these features aim to offer users a glimpse into unconventional analysis. Some of these features include Performance Calculation, Volatility Calculation, Dynamic Threshold Calculation Using Volatility, Bollinger Bands Module, Weighted Signal System Incorporating New Features.
3.1 Performance Calculation:
The script calculates the percentage change in the price over a specified lookback period (variable lookbackBars). This provides a measure of recent performance.
pctChange(src, length) =>
change = src - src
pctChange = (change / src ) * 100
recentPerformance1H = pctChange(close, lookbackBars)
recentPerformance4H = pctChange(request.security(syminfo.tickerid, "240", close), lookbackBars)
recentPerformance1D = pctChange(request.security(syminfo.tickerid, "1D", close), lookbackBars)
3.2 Volatility Calculation:
The script computes the standard deviation of the closing price to measure volatility.
volatility1H = ta.stdev(close, 20)
volatility4H = ta.stdev(request.security(syminfo.tickerid, "240", close), 20)
volatility1D = ta.stdev(request.security(syminfo.tickerid, "1D", close), 20)
3.3 Dynamic Threshold Calculation Using Volatility:
The dynamic thresholds for RSI are calculated by adding a multiplier of volatility to 50.
dynamicThreshold1H = 50 + thresholdMultiplier * volatility1H
dynamicThreshold4H = 50 + thresholdMultiplier * volatility4H
dynamicThreshold1D = 50 + thresholdMultiplier * volatility1D
3.4 Bollinger Bands Module:
An additional module for Bollinger Bands is introduced, providing an option to enable or disable it.
// Additional Module: Bollinger Bands
bbLength = input(20, title="Bollinger Bands Length")
bbMultiplier = input(2.0, title="Bollinger Bands Multiplier")
upperBand = ta.sma(close, bbLength) + bbMultiplier * ta.stdev(close, bbLength)
lowerBand = ta.sma(close, bbLength) - bbMultiplier * ta.stdev(close, bbLength)
3.5 Weighted Signal System Incorporating New Features:
Buy and sell signals are generated based on the dynamic threshold, recent performance, and Bollinger Bands.
weightedBuySignal = rsi1H > dynamicThreshold1H and rsi4H > dynamicThreshold4H and rsi1D > dynamicThreshold1D and crossOver1H
weightedSellSignal = rsi1H < dynamicThreshold1H and rsi4H < dynamicThreshold4H and rsi1D < dynamicThreshold1D and crossUnder1H
These features collectively aim to provide users with a more comprehensive view of market dynamics by incorporating recent performance and volatility considerations into the RSI analysis. Users can experiment with these features to explore their impact on signal accuracy and overall indicator performance.
Indicator Placement for Enhanced Visibility
Overview
The design choice to position the "Advanced Dynamic Threshold RSI" indicator both on the main chart and beneath it has been carefully considered to address specific challenges related to visibility and scaling, providing users with an improved analytical experience.
Challenges Faced
1. Differing Scaling of RSI Results:
RSI values for different timeframes (1-hour, 4-hour, and 1-day) often exhibit different scales, especially in markets like gold.
Attempting to display these RSIs on the same chart can lead to visibility issues, as the scaling differences may cause certain RSI lines to appear compressed or nearly invisible.
2. Candlestick Visibility vs. RSI Scaling:
Balancing the visibility of candlestick patterns with that of RSI values posed a unique challenge.
A single pane for both candlesticks and RSIs may compromise the clarity of either, particularly when dealing with assets that exhibit distinct volatility patterns.
Design Solution
Placing the buy/sell signals above/below the candles helps to maintain a clear association between the signals and price movements.
By allocating RSIs beneath the main chart, users can better distinguish and analyze the RSI values without interference from candlestick scaling.
Doubling the scaling of the 1-hour RSI (displayed in blue) addresses visibility concerns and ensures that it remains discernible even when compared to the other two RSIs: 4-hour RSI (orange) and 1-day RSI (green).
Bollinger Bands Module is optional, but is turned on as default. When the module is turned on, the users can see the upper Bollinger Band (green) and lower Bollinger Band (red) on the main chart to gain more insight into price actions of the candles.
User Flexibility
This dual-placement approach offers users the flexibility to choose their preferred visualization:
The main chart provides a comprehensive view of buy/sell signals in relation to candlestick patterns.
The area beneath the chart accommodates a detailed examination of RSI values, each in its own timeframe, without compromising visibility.
The chosen design optimizes visibility and usability, addressing the unique challenges posed by differing RSI scales and ensuring users can make informed decisions based on both price action and RSI dynamics.
Usage
Installation
To ensure you receive updates and enhancements seamlessly, follow these steps:
Open the TradingView platform.
Navigate to the "Indicators" tab in the top menu.
Click on "Community Scripts" and search for "Advanced Dynamic Threshold RSI Indicator."
Select the indicator from the search results and click on it to add to your chart.
This ensures that any future updates to the indicator can be easily applied, keeping you up-to-date with the latest features and improvements.
Review Code
Open TradingView and navigate to the Pine Editor.
Copy the provided script.
Paste the script into the Pine Editor.
Click "Add to Chart."
Configuration
The indicator offers several customizable settings:
RSI Length: Defines the length of the RSI calculation.
SMA Length: Sets the length of the SMA applied to the RSI.
Lookback Bars: Determines the number of bars used for recent performance analysis.
Threshold Multiplier: Adjusts the multiplier for dynamic threshold calculation.
Enable Bollinger Bands: Allows users to enable or disable Bollinger Bands integration.
Interpreting Signals
Buy Signal: Generated when RSI values are above dynamic thresholds and a crossover occurs.
Sell Signal: Generated when RSI values are below dynamic thresholds and a crossunder occurs.
Additional Information
The indicator plots scaled RSI lines for 1-hour, 4-hour, and 1-day timeframes.
Users can experiment with additional modules, such as machine-learning simulation, dynamic real-life improvements, or experimental signal filtering, depending on personal preferences.
Conclusion
The Advanced Dynamic Threshold RSI Indicator provides traders with a sophisticated tool for RSI-based analysis, offering a unique combination of dynamic thresholds, performance analysis, and optional Bollinger Bands integration. Traders can customize settings and experiment with additional modules to tailor the indicator to their trading strategy.
Disclaimer: Use of the Advanced Dynamic Threshold RSI Indicator
The Advanced Dynamic Threshold RSI Indicator is provided for educational and experimental purposes only. The indicator is not intended to be used as financial or investment advice. Trading and investing in financial markets involve risk, and past performance is not indicative of future results.
The creator of this indicator is not a financial advisor, and the use of this indicator does not guarantee profitability or specific trading outcomes. Users are encouraged to conduct their own research and analysis and, if necessary, consult with a qualified financial professional before making any investment decisions.
It is important to recognize that all trading involves risk, and users should only trade with capital that they can afford to lose. The Advanced Dynamic Threshold RSI Indicator is an experimental tool that may not be suitable for all individuals, and its effectiveness may vary under different market conditions.
By using this indicator, you acknowledge that you are doing so at your own risk and discretion. The creator of this indicator shall not be held responsible for any financial losses or damages incurred as a result of using the indicator.
Kind regards,
Ely
Trend Reversal System with SR levelsHello All,
This is the Trend Reversal System with Support/Resistance levels script. long time ago I published it as closed source but now I upgraded it and and published as open-source with a different name. I hope it would be useful for you all while trading/analyzing.
The script has some parts in it: Setup, Count, SR levels, Risk levels & Targets . Now lets check them:
Setup Part: it has two part, Buy or Sell Setup. one of them can be active only. Buy setup: if current close checks if current is lower/equal than the close of the 5. bar. if yes then the script increases number of buy setup. and if it reaches 9 then the script checks if current low is lower/equal than the lows of last 3. and 4. bars, or if the low of the last bar is lower/equal than the lows of last 3. and 4. bars. if yes then the script increases the buy setup by 1. if these conditions met then it puts the label 'S' , same for Sell setup. S labels on both setup are potential reversals.
Count Part: If buy or sell setup reaches the 9 then Count part starts from 1. lets see buy count: If current close is lower/equal than the low of the 3. bar and buy count is lower than 12 or low of the bar 13 is less than or equal to the close of bar 8 then buy count increase or it's completed. if it's completed then the script puts C label, and it's potential reversal. of course there are some conditions that can cancel the count buy/sell or recycle/restart.
By using Setup and Count levels the script can show Support/Resistance Levels, Risk levels & Targets. SR levels are potential reversal levels.
Lets see some example screenshots:
Support/Resistance levels:
Potential Reversal levels and how setup/counts are shown:
Count part can recycle and the script shows it as 'R' , ( you can see the conditions for Recycle in the script ):
Count can be cancelled and and it's shown as 'x'
If the scripts find 9 on Setup or 13 on Count then it checks if it's a good level to buy/sell and if it decides it's good level then it shows TRSSetup Buy/Sell or TRSCount Buy/Sell and also shows the target. in following example the script checks and decide it's a good level to take long position. it can be aggressive or conservative, Conservative is recommended.
Enjoy!
Volume FootprintThe Volume Footprint chart is analyzing volume data from inside the candle and split them into Up and Down Volume in the same way as Volume Profile analyzes the volume data from a fragment of the chart.
The visualization is little different:
Down Volume (sells) are shown on the left side of a candle.
Up Volume (Buys) are shown on the right side of a candle.
User can pick data precision used by Volume Footprint. We recomend to use the highest possible precision.
Unfortunatelly Trading View has many limitations.
If after adding script nothing is visible with error: "'The study references too many candles in history'" you need to use lower precision - It can be changed in script settings.
This script is a part of a toolkit called "Volume Footprint", containing few tools:
Volume Footprint - Scripts drawing Volume Footprint chart.
Volume Footprint Statistics - Script showing table with basic statistics about Up and Down volume inside the candles.
Volume Delta In Candle - Chart showing history of delta (difference between Up and Down volume) changes inside the current candle.
Volume Cumulative Delta - Chart showing history of cumulative delta (sum of difference between Up and Down volume in trading period equal to chart interval).
This script can be used by any user. You do not need to have PRO or PREMIUM account to use it.
Script with limited access, contact author to get authorization
User Interface:
Script is grouping Up and Down Volume into slots based on price. Slots height is controled by "Slot height" param in settings.
On left side of a candle Down Volume is shown and on right side Up Volume is shown.
Before Down Volume may appear imbalance symbols:
⠀↓ - 3 times
⠀↡ - 5 times
⠀⇊ - 10 times
After Up Volume may appear imbalance symbols:
⠀↑ - 3 time
⠀↟ - 5 times
⠀⇈ - 10 times
Above the candle we can show some basic statistics of that candle:
"V:" - Row with volume statistics:
⠀∑ - Total volume,
⠀Δ - Difference between Up and Down Volume.
⠀min Δ - Smallest difference between Up and Down Volume in that candle
⠀max Δ - Biggest difference between Up and Down Volume in that candle
Script settings:
Slot height = 10^ - Price slot height on the chart:
⠀ 0 - 1$
⠀ 1 - 10$
⠀ 2 - 100$
⠀ 3 - 1000$
⠀-1 - 0.1$
⠀-2 - 0.01$
⠀-3 - 0.001$
Data precision - One of 6 levels of data precision: ▉▇▆▅▃▁, where ▉ means the highest precision and ▁ the lowest available precision. On 15 minute chart highest precision should be available, but on 1D it will probably hit TradingView limitations and script will not be even launched by the platform with error: "'The study references too many candles in history'". The general recommendation is to use the highest available precision for a given instrument and interval.
Precise warnings - Option to show precise warnings about missing volume in candle footprint (warning connected with one of TradingView limitations).
Draw candles - Option of drawing candles fiting to volume labels and 2 fields for picking colors of up and down candles. The general recommendation is to hide chart candles and turn on this option.
Show stats - Showing stats over the candle: ∑, Δ, min Δ, max Δ. You can use 'Volume Footprint Statistics' script instead
Font size - Used to draw all the data over the chart: T(iny), S(mall), N(ormal), L(arge)
Centered - If checked volume labels are stick to candle (centered).
Color values - Option to draw labels with use of Up or Down color, depending which value (Volume Up or Volume Down) is bigger in the price slot.
Filter - Filtering option than allow hinding labels with small values:
⠀0 - filter turned off.
⠀1-5 - filtering with transparency
⠀6-10 - Filtering with hiding values.
Show zeros - It can show zeros or leave empty places
Highlight biggest slot - Option to highlight price slot with biggest volume in the candle.
Imbalances - Showing imbalance symbols before Down or after Up Volume
Only over average - Showing imbalances symbols only for volume not smaller than the average value.
Value area - Option to identify group of slots with biggest volume in each candle. A group is a smallest set of neighboring slots that have at least n(param) % of candle volume .
⠀ Value Area Minimal Volume (%) - Value area size as % of candle volume .
⠀ Color - Color of the Value area.
⠀ Show borders - Showing border lines of value areas over the candle.
⠀ Track - Option to track value areas. Potencial Support-Resistance zones.
⠀ Only active - Hide areas that were crossed by the price.
Show Values - Show volume value over tracked value areas.
Troubleshooting:
In case of any problems, send error details to the author of the script.
Known issues:
"The study references too many candles in history" - Change "Data precision" settings to some lower value.
Tick StatisticsTick Statistics:
I have seen many questions/queries related to tick data in TV telegram channels. This script will help pine scripts to understand how ticks work, how to capture and process tick data.
This is an educational indicator script for pine scripters.
The indicator shall work only on real time candles. Tick data capture is initiated as soon as indicator is loaded on the chart. You might not get correct statistics on 1st candle in case indicator is loaded when real time candle is in progress, in such case you can monitor the statistics generated for subsequent candles.
Generated statistics is shown on the chart by placing 2 diamond shapes above and below the candle.
Diamond shape below the candle will have candles ‘tick data’ listed in a table. This can be view by placing mouse pointer on the diamond shape. Refer to point 1 below for more details.
Diamond shape above the candle will have statistics as mentioned in point no 2 onwards. To view the statistics place the mouse point on the diamond shape. The shape will appear in green color when both tick price and tick volume are both moving in the same direction. The diamond shape in red color means tick price and tick volume are moving in opposite direction.
The script captures tick by tick data and generate statistics below:
1. List of tick data with details below: (this is stored in the diamond shape placed below the candle)
a. Tick no
b. Tick type – Up tick (Up), Down tick (Dn), No change (--)
c. Tick price
d. Volume
e. Price difference (as compared to previous tick price)
f. Volume difference (as compared to previous tick volume)
2. Tick statistics
a. Total ticks
b. Number of up ticks
c. Number of down ticks
d. Number of No change ticks
3. Volume Statistics
a. Total volume
b. Up tick volume
c. Down tick volume
d. Volume associated with ticks where there is no change
e. Candle volume (just for reconciliation purpose)
4. Max-min statistics
a. Max volume = <> at price = <> at tick no = <>
b. Min volume = <> at price = <> at tick no = <>
c. Max price = <> at volume = <> at tick no = <>
d. Min price = <> at volume = <> at tick no = <>
5. Candle summary
a. Price << Up >> (if price is up as compared to 1st tick <> otherwise
b. Volume <> (if up tick volume is more than down tick volume <> otherwise
KCGmut“KCGmut” stands for “Mutations Of Keltner Center Of Gravity Channel”.
After adding the ‘KeltCOG Width’ label to the KeltCOG, I got the idea of creating a subpanel indicator to show the development of the width-percent in previous periods. After some more thinking, I decided that the development of the COG-width-percent should also be reported and somehow the indicator should report whether the close is over (momentum is up), in (momentum is sideways) or under (momentum is down) the COG ( This is the gray area in the channel).
Borrowing from other scripts:
I tweeked the script of the KeltCOG (published) to calculate the columns and of REVE (also published) to calculate the volume spikes. Because the KeltCOG script had the default option to let the script chose lookback and adapt the width, I decided to not provide inputs to tweek lookback or channel width. Thus, if you use a KeltCOG in default setting, REVE and KCGmut together in the same chart, these will provide consistent complementary information about the candle. This layout has this combination:
I added actual volume to show where volume spikes occur.
Columns
For the channel-width-percent half of the value is used and for the COG-width-percent the whole to get a better image
By plotting the columns of the full width before those of the COG, in two series of positive and negative values, I created the illusion of a column with a different colored patch representing the COG (most are black) at the bottom where it points up (showing momentum is up), in the middle when the close is in the COG (no momentum) or at the top when the close is below the COG (showing momentum is down)
coloring drama
When nothing much happens, i.e. the channels keep the same width of shrink a bit, the columns get an unobtrusive color, black for the small COG patches and bluish gray for the channel columns pointing up or sideways, reddish gray when pointing down. If the COG increases (drama) the patches get colored lime (up), red (down) or orange (sideways, very seldom). If the channel increases, the columns get colored gold (up), maroon (down) or orange (sideways). Because the COG is derived from a Donchian channel, drama means a new high or low in the lookback period. Drama in the KeltCOG channel just means increase in volatility.
histogram showing volume spikes
Blue spikes indicate more then twice as much volume then recently normal, Maroon spikes indicate clear increases less then twice. To prevent the histogram from disappearing behind a column it is plotted first, spikes made longer then the column and also plotted both positive and negative. Single volume spikes don’t mean much, however if these occur in consecutive series and also come together with drama like new highs or increase in volatility, volume is worth noting. I regard such events as ‘voting’, the market ‘votes’ up or down. The REVE analyses these events to asses whether the volume stems from huge institutional traders (‘whales’) or large numbers of small traders (‘muppets’). This might be interesting too.
Remarks about momentum
Like in MACD, momentum has a direction. The difference is that in KCGmut momentum is a choise of the market to move above the COG (uptrend) or in (sideways) or under (downtrend), whereas in MACD the indicator shows the energy with which the market moves up or down. How does the market ‘choose’? The market doesn’t ‘think’, but still it comes to decisions. I see an analogy with the way a swarm of birds decides to go here or there, up or down, or land in a tree. All birds seem to agree but I guess a single bird has not much say in what the swarm does.
High time frame Pivot Anchored VWAP V1.0Purpose:
-----------
To provide VWAPs anchored on the high and low pivots. I have seen scripts which anchor VWAP on a session or time frame or indeed a time, but not yet one that anchors on pivot points.
Value:
--------
As many have stated, price action tends toward VWAPs. I named the VWAPs anchored on high pivots the Selling VWAP, representing the volume weighted average of the sellers. And the VWAPs anchored on the low pivots, Buying VWAP, representing the volume weighted average of the buyers.
One of these two governs the current price action.
What is unique about this script:
---------------------------------------
- Locates pivots also found in higher time frames (it does not use the Security Function, technically it does not locate high time frame pivots)
- It uses a simple technique to locate the pivots that avoids using "For Loops" , typically used with HTF Pivots and at times can cause time outs
- VWAPs are then anchored on the pivots
- High Pivots are anchored with a VWAP using the High price as the source
- Low Pivots are anchored with a VWAP using the Low price as the source
How to Use It
-----------------
- Choose the higher time frame pivots of interest, the script uses current time frame multiplier
- so on a 1 minute chart, 60 is 1 hour. On a 5 min chart the same multiplier would be 5 hours.
- Choose how many of the higher time frame bars define the pivot, the right side and left side
- the default is 8 and 4, for a 60 multiplier on a 1min chart it implies 4hrs right of the pivot and 8 hrs left of the pivot.
- A Vidya moving average is included
- When the ma crosses over the Selling VWAP then the system is dominated by the buyers and the Buying VWAP provides support
- When the ma crosses under the Buying VWAP then the system is dominated by the sellers and the Selling VWAP provides resistance
It helps by keeping you in a trade, also by using the support/resistance to add to a position.
I make those decisions in the script, and display only the dominating VWAP
Acknowledgements
------------------------
PineCoders for their functions on managing resolution.
LucF for his work on high time frame pivots.
Future considerations
--------------------------
- Provide option to show both VWAPs
- Use a different ma, such as VWMA, or provide a choice.
- Open the script, version 1.0 being what it is
Tape [LucF]█ OVERVIEW
This script prints an ersatz of a trading console's "tape" section to the right of your chart. It displays the time, price and volume of each update of the chart's feed. It also calculates volume delta for the bar. As it calculates from realtime information, it will not display information on historical bars.
█ FEATURES
Calculations
Each new line in the tape displays the last price/volume update from the TradingView feed that's building your chart. These updates do not necessarily correspond to ticks from the originating broker/exchange's matching engine. Multiple broker/exchange ticks are often aggregated in one chart update.
The script first determines if price has moved up or down since the last update. The polarity of the price change, in turn, determines the polarity of the volume for that specific update. If price does not move between consecutive updates, then the last known polarity is used. Using this method, we can calculate a running volume delta accumulation for the bar, which becomes the bar's final volume delta value when the bar closes (you can inspect values of elapsed realtime bars in the Data Window or the indicator's values). Note that these values will all reset if the script re-executes because of a change in inputs or a chart refresh.
While this method of calculating volume delta is not perfect, it is currently the most precise way of calculating volume delta available on TradingView at the moment. Calculating more precise results would require scripts to have access to bid/ask levels from any chart timeframe. Charts at seconds timeframes do use exchange/broker ticks when the feeds you are using allow for it, and this indicator will run on them, but tick data is not yet available from higher timeframes, for now. Also note that the method used in this script is far superior to the intrabar inspection technique used on historical bars in my other "Delta Volume" indicators. This is because volume delta here is calculated from many more realtime updates than the available intrabars in history.
Inputs
You can use the script's inputs to configure:
• The number of lines displayed in the tape.
• If new lines appear at the top or bottom.
• If you want to hide lines with low volume.
• The precision of volume values.
• The size of the text and the colors used to highlight either the tape's text or background.
• The position where you want the tape on your chart.
• Conditions triggering three different markers.
Display
Deltas are shown at the bottom of the tape. They are reset on each bar. Time delta displays the time elapsed since the beginning of the bar, on intraday timeframes only. Contrary to the price change display by TradingView at the top left of charts, which is calculated from the close of the previous bar, the price delta in the tape is calculated from the bar's open, because that's the information used in the calculation of volume delta. The time will become orange when volume delta's polarity diverges from that of the bar. The volume delta value represents the current, cumulative value for the bar. Its color reflects its polarity.
When new realtime bars appear on the chart, a ↻ symbol will appear before the volume value in tape lines.
Markers
There are three types of markers you can choose to display:
• Marker 1 on volume bumps. A bump is defined as two consecutive and increasing/decreasing plus/minus delta volume values,
when no divergence between the polarity of delta volume and the bar occurs on the second bar.
• Marker 2 on volume delta for the bar exceeding a limit of your choice when there is no divergence between the polarity of delta volume and the bar. These trigger at the bar's close.
• Marker 3 on tape lines with volume exceeding a threshold. These trigger in realtime. Be sure to set a threshold high enough so that it doesn't generate too many alerts.
These markers will only display briefly under the bar, but another marker appears next to the relevant line in the tape.
The marker conditions are used to trigger alerts configured on the script. Alert messages will mention the marker(s) that triggered the specific alert event, along with the relevant volume value that triggered the marker. If more than one marker triggers a single alert, they will overprint under the bar, which can make it difficult to distinguish them.
For more detailed on-chart analysis of realtime volume delta, see my Delta Volume Realtime Action .
█ NOTES FOR CODERS
This script showcases two new Pine features:
• Tables, which allow Pine programmers to display tabular information in fixed locations of the chart. The tape uses this feature.
See the Pine User Manual's page on Tables for more information.
• varip -type variables which we can use to save values between realtime updates.
See the " Using `varip` variables " publication by PineCoders for more information.
Harmonic PatternsHello Traders,
This is Harmonic Pattern script . I made this script long time ago and now pubished it for the community. it can find & show following patterns:
- Gartley
- Butterfly
- Bat
- Alternate Bat
- Crab
- Deep Crab
- Shark
- Cypher
- Double Top
- Double Bottom
- ABCD
only ABCD patterns is not enabled by default, you can enable if you want.
The script has many features in it, so you have many options. lets see them
ZigZag Period : is the period for zig zag that is used to find harmonic patterns.
Error Rate % : the patterns may not be perfect and we need to use a threshold. with this option you can set error rate
Deep Search: if you enable this option then the script check combination with old zigzag points. an example is under the explanation part
Pattern Prediction : if you set this option then while price is moving the script checks the possible next patterns that can be possible (shows first possible one). an example is under the explanation part
Show ZigZag: you have option to see zigzag
Show Pattern Names: you have option to see Pattern names
Remove Old Pattern Names : old found patterns can stay on the chart or you have option to delete from the chart by this option
Show Harmonics: you have option to show patterns
Show Targets: you have option to see the target and stop-loss level by each harmonic
Show Statistics: you can see the statictics about harmonic patterns on current chart
Show Full Statistics: you can see the statictics about harmonic patterns on current chart in details
"Stop-loss ATR Len" and "Stop-loss ATR Mult" is used to calculate stop-loss levels
and many options for visualization and alerts...
The scripts works dynamically in real time, it means it may find different patterns on each candles. if it finds a new one in same direction then old one becomes invalid, you should check the last one.
Lets see some examples:
it changes the colors if price reached the target or stop-loss. blue => reached target, black => stop-loss, and if color was not changed it means it found another harmonic pattern.
if it finds a harmonic pattern then it show entrty level, cancelation level of the pattern, target 1 and target 2
and if price reaches entrty level then it shows targets and stop-loss levels
as written above, t has ability to predict patterns if you enable this option:
Deep search is used to find patterns by some old zigzag levels as seen in following screenshot:
it can show full statistics if you enable it in the options:
The source code is hidden but it's free script. so like it/favorite this script, apply it to your chart and start using it ;)
Special thanks to my friend @gornidah who helped while developing the script!
Enjoy!
Daily GAP StatsI did not write the script from scratch but rather started editing code of an existing one. The original code came from a script called GAP DETECTOR by @Asch-
First up: I am a trader, not a programmer and therefore my code most likely is inefficient. If someone with more expertise would like to help and optimize it - feel free to get in touch, I am always happy to learn some new tricks. :)
This script does 2 things:
- It shows daily gaps stats based on user inputs
- It shows color coded labels on gap days with additional information in tooltips ( important: make sure to read 'known issues/limitations' at the end )
User Inputs
==========
Although the input dialog is pretty straight forward, I do a quick rundown:
- Length: max lookback time
- Gap Direction: self explanatory
- Show All Gaps | Cont Only | Reversal Only | Off:
This refers to the way labels are displayed on gap days (again: make sure to read known issues/limitations!)
- Show All Gaps: does what it says
- Cont Only: only shows gaps where price continued in the gap direction. If you filter for gap ups and chose 'Cont only' you will only see labels on gap days where price closed above the open (and vice versa if you scan for gap downs).
- Reversal Only: you will only see labels for closes below the open on gap up days (and the opposite on gap down days)
- Off: self explanatory
- Gap Measure in ATR/PCT: self explanatory, ATR is calculated over a 10d period
- Gap Size (Abs Values): no negative values allowed here. If you filter for gap downs and enter 3 it means it will show gaps where the stock fell more than 3 ATR/PCT on the open.
- RVOL Factor: along with significant gaps should come significant volume. RVOL = volume of the gap day / 20d average volume
- Viewing Options: Placing the stats label in the window is a bit tricky (see knonw issues/limitations) and I was not sure which way I liked better. See for yourself what works best for you.
Known Isusses/Limitations:
=======================
- Positioning of the stats table:
As to my knowledge, Tradingview only allows label positioning relative to price and not relative to the chart window. I tried to always display the gap stats table in the upper right corner, using 52wk high as y-coordinate. This works ok most of the time, but is not pretty. If anybody has some fancy way to tag the label in a fixed position, please get in touch.
- Max number of labels per script:
TradingView has a limitation that allows a maxium of ~50 labels per script. If there are more labels, TradingView will automatically cut the oldest ones, without any notification. I have found this behaviour to be rather inconsistent - sometimes it'll dump labels even if there are a lot fewer than 50. Hopefully TradingView will drop this limitation at one point in the future.
Important: The inconsistent display of the gap day labels has NO INFLUENCE on the calculations in the gap stats table - the count and the calculations are complete and correct!
Polynomial Regression Bands + Channel [DW]This is an experimental study designed to calculate polynomial regression for any order polynomial that TV is able to support.
This study aims to educate users on polynomial curve fitting, and the derivation process of Least Squares Moving Averages (LSMAs).
I also designed this study with the intent of showcasing some of the capabilities and potential applications of TV's fantastic new array functions.
Polynomial regression is a form of regression analysis in which the relationship between the independent variable x and the dependent variable y is modeled as a polynomial of nth degree (order).
For clarification, linear regression can also be described as a first order polynomial regression. The process of deriving linear, quadratic, cubic, and higher order polynomial relationships is all the same.
In addition, although deriving a polynomial regression equation results in a nonlinear output, the process of solving for polynomials by least squares is actually a special case of multiple linear regression.
So, just like in multiple linear regression, polynomial regression can be solved in essentially the same way through a system of linear equations.
In this study, you are first given the option to smooth the input data using the 2 pole Super Smoother Filter from John Ehlers.
I chose this specific filter because I find it provides superior smoothing with low lag and fairly clean cutoff. You can, of course, implement your own filter functions to see how they compare if you feel like experimenting.
Filtering noise prior to regression calculation can be useful for providing a more stable estimation since least squares regression can be rather sensitive to noise.
This is especially true on lower sampling lengths and higher degree polynomials since the regression output becomes more "overfit" to the sample data.
Next, data arrays are populated for the x-axis and y-axis values. These are the main datasets utilized in the rest of the calculations.
To keep the calculations more numerically stable for higher periods and orders, the x array is filled with integers 1 through the sampling period rather than using current bar numbers.
This process can be thought of as shifting the origin of the x-axis as new data emerges.
This keeps the axis values significantly lower than the 10k+ bar values, thus maintaining more numerical stability at higher orders and sample lengths.
The data arrays are then used to create a pseudo 2D matrix of x power sums, and a vector of x power*y sums.
These matrices are a representation the system of equations that need to be solved in order to find the regression coefficients.
Below, you'll see some examples of the pattern of equations used to solve for our coefficients represented in augmented matrix form.
For example, the augmented matrix for the system equations required to solve a second order (quadratic) polynomial regression by least squares is formed like this:
(∑x^0 ∑x^1 ∑x^2 | ∑(x^0)y)
(∑x^1 ∑x^2 ∑x^3 | ∑(x^1)y)
(∑x^2 ∑x^3 ∑x^4 | ∑(x^2)y)
The augmented matrix for the third order (cubic) system is formed like this:
(∑x^0 ∑x^1 ∑x^2 ∑x^3 | ∑(x^0)y)
(∑x^1 ∑x^2 ∑x^3 ∑x^4 | ∑(x^1)y)
(∑x^2 ∑x^3 ∑x^4 ∑x^5 | ∑(x^2)y)
(∑x^3 ∑x^4 ∑x^5 ∑x^6 | ∑(x^3)y)
This pattern continues for any n ordered polynomial regression, in which the coefficient matrix is a n + 1 wide square matrix with the last term being ∑x^2n, and the last term of the result vector being ∑(x^n)y.
Thanks to this pattern, it's rather convenient to solve the for our regression coefficients of any nth degree polynomial by a number of different methods.
In this script, I utilize a process known as LU Decomposition to solve for the regression coefficients.
Lower-upper (LU) Decomposition is a neat form of matrix manipulation that expresses a 2D matrix as the product of lower and upper triangular matrices.
This decomposition method is incredibly handy for solving systems of equations, calculating determinants, and inverting matrices.
For a linear system Ax=b, where A is our coefficient matrix, x is our vector of unknowns, and b is our vector of results, LU Decomposition turns our system into LUx=b.
We can then factor this into two separate matrix equations and solve the system using these two simple steps:
1. Solve Ly=b for y, where y is a new vector of unknowns that satisfies the equation, using forward substitution.
2. Solve Ux=y for x using backward substitution. This gives us the values of our original unknowns - in this case, the coefficients for our regression equation.
After solving for the regression coefficients, the values are then plugged into our regression equation:
Y = a0 + a1*x + a1*x^2 + ... + an*x^n, where a() is the ()th coefficient in ascending order and n is the polynomial degree.
From here, an array of curve values for the period based on the current equation is populated, and standard deviation is added to and subtracted from the equation to calculate the channel high and low levels.
The calculated curve values can also be shifted to the left or right using the "Regression Offset" input
Changing the offset parameter will move the curve left for negative values, and right for positive values.
This offset parameter shifts the curve points within our window while using the same equation, allowing you to use offset datapoints on the regression curve to calculate the LSMA and bands.
The curve and channel's appearance is optionally approximated using Pine's v4 line tools to draw segments.
Since there is a limitation on how many lines can be displayed per script, each curve consists of 10 segments with lengths determined by a user defined step size. In total, there are 30 lines displayed at once when active.
By default, the step size is 10, meaning each segment is 10 bars long. This is because the default sampling period is 100, so this step size will show the approximate curve for the entire period.
When adjusting your sampling period, be sure to adjust your step size accordingly when curve drawing is active if you want to see the full approximate curve for the period.
Note that when you have a larger step size, you will see more seemingly "sharp" turning points on the polynomial curve, especially on higher degree polynomials.
The polynomial functions that are calculated are continuous and differentiable across all points. The perceived sharpness is simply due to our limitation on available lines to draw them.
The approximate channel drawings also come equipped with style inputs, so you can control the type, color, and width of the regression, channel high, and channel low curves.
I also included an input to determine if the curves are updated continuously, or only upon the closing of a bar for reduced runtime demands. More about why this is important in the notes below.
For additional reference, I also included the option to display the current regression equation.
This allows you to easily track the polynomial function you're using, and to confirm that the polynomial is properly supported within Pine.
There are some cases that aren't supported properly due to Pine's limitations. More about this in the notes on the bottom.
In addition, I included a line of text beneath the equation to indicate how many bars left or right the calculated curve data is currently shifted.
The display label comes equipped with style editing inputs, so you can control the size, background color, and text color of the equation display.
The Polynomial LSMA, high band, and low band in this script are generated by tracking the current endpoints of the regression, channel high, and channel low curves respectively.
The output of these bands is similar in nature to Bollinger Bands, but with an obviously different derivation process.
By displaying the LSMA and bands in tandem with the polynomial channel, it's easy to visualize how LSMAs are derived, and how the process that goes into them is drastically different from a typical moving average.
The main difference between LSMA and other MAs is that LSMA is showing the value of the regression curve on the current bar, which is the result of a modelled relationship between x and the expected value of y.
With other MA / filter types, they are typically just averaging or frequency filtering the samples. This is an important distinction in interpretation. However, both can be applied similarly when trading.
An important distinction with the LSMA in this script is that since we can model higher degree polynomial relationships, the LSMA here is not limited to only linear as it is in TV's built in LSMA.
Bar colors are also included in this script. The color scheme is based on disparity between source and the LSMA.
This script is a great study for educating yourself on the process that goes into polynomial regression, as well as one of the many processes computers utilize to solve systems of equations.
Also, the Polynomial LSMA and bands are great components to try implementing into your own analysis setup.
I hope you all enjoy it!
--------------------------------------------------------
NOTES:
- Even though the algorithm used in this script can be implemented to find any order polynomial relationship, TV has a limit on the significant figures for its floating point outputs.
This means that as you increase your sampling period and / or polynomial order, some higher order coefficients will be output as 0 due to floating point round-off.
There is currently no viable workaround for this issue since there isn't a way to calculate more significant figures than the limit.
However, in my humble opinion, fitting a polynomial higher than cubic to most time series data is "overkill" due to bias-variance tradeoff.
Although, this tradeoff is also dependent on the sampling period. Keep that in mind. A good rule of thumb is to aim for a nice "middle ground" between bias and variance.
If TV ever chooses to expand its significant figure limits, then it will be possible to accurately calculate even higher order polynomials and periods if you feel the desire to do so.
To test if your polynomial is properly supported within Pine's constraints, check the equation label.
If you see a coefficient value of 0 in front of any of the x values, reduce your period and / or polynomial order.
- Although this algorithm has less computational complexity than most other linear system solving methods, this script itself can still be rather demanding on runtime resources - especially when drawing the curves.
In the event you find your current configuration is throwing back an error saying that the calculation takes too long, there are a few things you can try:
-> Refresh your chart or hide and unhide the indicator.
The runtime environment on TV is very dynamic and the allocation of available memory varies with collective server usage.
By refreshing, you can often get it to process since you're basically just waiting for your allotment to increase. This method works well in a lot of cases.
-> Change the curve update frequency to "Close Only".
If you've tried refreshing multiple times and still have the error, your configuration may simply be too demanding of resources.
v4 drawing objects, most notably lines, can be highly taxing on the servers. That's why Pine has a limit on how many can be displayed in the first place.
By limiting the curve updates to only bar closes, this will significantly reduce the runtime needs of the lines since they will only be calculated once per bar.
Note that doing this will only limit the visual output of the curve segments. It has no impact on regression calculation, equation display, or LSMA and band displays.
-> Uncheck the display boxes for the drawing objects.
If you still have troubles after trying the above options, then simply stop displaying the curve - unless it's important to you.
As I mentioned, v4 drawing objects can be rather resource intensive. So a simple fix that often works when other things fail is to just stop them from being displayed.
-> Reduce sampling period, polynomial order, or curve drawing step size.
If you're having runtime errors and don't want to sacrifice the curve drawings, then you'll need to reduce the calculation complexity.
If you're using a large sampling period, or high order polynomial, the operational complexity becomes significantly higher than lower periods and orders.
When you have larger step sizes, more historical referencing is used for x-axis locations, which does have an impact as well.
By reducing these parameters, the runtime issue will often be solved.
Another important detail to note with this is that you may have configurations that work just fine in real time, but struggle to load properly in replay mode.
This is because the replay framework also requires its own allotment of runtime, so that must be taken into consideration as well.
- Please note that the line and label objects are reprinted as new data emerges. That's simply the nature of drawing objects vs standard plots.
I do not recommend or endorse basing your trading decisions based on the drawn curve. That component is merely to serve as a visual reference of the current polynomial relationship.
No repainting occurs with the Polynomial LSMA and bands though. Once the bar is closed, that bar's calculated values are set.
So when using the LSMA and bands for trading purposes, you can rest easy knowing that history won't change on you when you come back to view them.
- For those who intend on utilizing or modifying the functions and calculations in this script for their own scripts, I included debug dialogues in the script for all of the arrays to make the process easier.
To use the debugs, see the "Debugs" section at the bottom. All dialogues are commented out by default.
The debugs are displayed using label objects. By default, I have them all located to the right of current price.
If you wish to display multiple debugs at once, it will be up to you to decide on display locations at your leisure.
When using the debugs, I recommend commenting out the other drawing objects (or even all plots) in the script to prevent runtime issues and overlapping displays.
Bull/Bear Probability [Anan]Hello Friends,,,
===================================
This indicator is based on Bayes' Theorem and is fully based on probabilities.
===================================
Formula For Bayes' Theorem:
P(Bull|Bear) = P(Bear∣Bull) * P(Bull) / P(Bear)
where:
Bull and Bear are events and P is probability
P(Bull|Bear) is the posterior probability, the probability of Bull after taking into account Bear
P(Bear∣Bull) is the conditional probability or likelihood, the degree of belief in Bear given that proposition of Bull belief (Bull true)
P(Bull) is the prior probability, the probability of Bull belief
P(Bear) is the prior probability, the probability of Bear belief
===================================
The indicator output 2 trend lines and (Bull/Bear) Signal :
Bull/Bear Probability Trend :
when the price is above it = Up Trend
when the price is below it = Down Trend
Bull/Bear Probability Trend Moving Average :
when the price is above it = Up Trend
when the price is below it = Down Trend
(Bull/Bear) Signal :
when Probability Trend Moving Average crossover Probability Trend = Bull Signal
when Probability Trend Moving Average crossunder Probability Trend = Bear Signal
===================================
Disclaimer:
This script is for informational and educational purposes only.
Use of the script does not constitutes professional and/or financial advice.
You alone the sole responsibility of evaluating the script output and risks associated with the use of the script.
===================================
Thanks to my friends dgtrd because he inspired me about probability, take a look at his scripts.
===================================
Funamental and financialsEarnings and Quarterly reporting and fundamental data at a glance.
A study of the financial data available by the "financial" functions in pinescript/tradingview
As far as I know, this script is unique. I found very few public examples of scripts using the fundamental data. and none that attempt to make the data available in a useful form
as an indicator / chart data. The only fitting category when publishing would be "trend analysis" We are going to look at the trend of the quarterly reports.
The intent is to create an indicator that instantly show the financial health of a company, and the trends in debt, cash and earnings
Normal settings displays all information on a per share basis, and should be viewed on a Daily chart
Percentage of market valuation can be used to compare fundamentals to current share price.
And actual to show the full numbers for verification with quarterly reporting and debuggging (actual is divided by 1.000.000 to keep numbers readable)
Credits to research study by Alex Orekhov (everget) for the Symbol Info Helper script
without it this would still be an unpublished mess, the use of textboxes allow me to remove many squiggly plot lines of fundamental data
Known problems and annoyances
1. Takes a long time to load. probably the amount of financial calls is the culprit. AFAIK not something i can to anything about in the script.
2. Textboxes crowd each other. dirty fix with hardcoded offsets. perhaps a few label offset options in the settings would do?
3. Only a faint idea of how to put text boxes on every quarter. Need time... (pun intended)
Have fun, and if you make significant improvements on this, please publish, or atleast leave a comment or message so I can consider adding it to this script.
© sjakk 2020-june-08
[BT] - ScalpMaster [ALERTS] v1Go easy on this script as it's my first, hopefully more to come!
ScalpMaster - V1
It's main feature is catch a bull run for volatile markets. Two main selling triggers (CCI and TSSL) with an option to only sell after fees are met (for profit).
Built in Statistics and Back-testing
I've introduced my own version of backtesting built into the main script. You can disable it if it's too much, just makes it easier to dial the settings in and compare with alert triggering. I've included this on all of my scripts.
***You will get a warning that this script repaints, however you can easily compare alerts against the labels. I'm not entirely sure, but I believe the repainting is due to the Global Stats Label at the end gets repainted to keep in the front. ***
Directions
Buy: When dialing in the script, watch the purple line above the source, when the current price crosses above this purple line then the buying trigger sets.
Sell: TSSL - Trailing Stop / Stop Limit, use available settings to manipulate behavior. It's meant to trail the bull run and sell once the price crosses the bottom tssl bar
Sell: CCI - Modify the FastMA and SlowMA settings
Sell: P+ - Above won't trigger until you are in the positive after the fees x2 are met. Great to keep your losses minimal. Combine this with a high Stop Loss for great results but might be waiting awhile for a profit.
Accumulation/Distribution Open Interest Money Flow Hi, this script is the version of Accumulation / Distribution Money Flow (ADMF) that uses Open Interes ts in the required markets instead of Volume.
Can be set from the menu. (Futures/Others)
NOTE: I only modified this script.
The original script belongs to cl8DH.
Original of the script:
I think it will make a difference in the future and commodity markets.
Since the system uses CFTC data, use only for 1W timeframe.
With my best regards..
EasyBee59 v3.0EasyBee59 v3.0 for TradingView does tedious CC59 counting in your investment chart for you automatically. It then print out positive or negative number on each price bar. A bar +1 and bar -1 is often followed by an uptrend and downtrend, respectively. It creates respectable support and resistance ( SNR ) levels based on CC59 counting results of -9 and +9. A pair of SMA lines with colors changing based on their trend are also generated. By default, a pair of Yellow-Green lines shows up at onset of an uptrend and those with Pink-Red at onset of a downtrend. In addition, it prints out reminders about important parameters that are happening so that you would not forget to consider them before placing trade orders. Smart phone and PC notifications of events occurring in the chart can be sent to you by server-side alerts so that you don't have to stay in front of the screen all the time.
Tools:
* Draw +9 SNR and -9 SNR (Orange and sky-blue support and resistance levels created at count +9 and -9).
* Draw a Fast SMA line (Increasing yellow / decreasing pink).
* Draw a Slow SMA line (Increasing green / decreasing red).
* Print CC59 numbers (Positive series from +1 to +21, negative series from -1 to -21).
* Print Yellow/Green and Pink/Red labels (YG for onset of an uptrend and PR for that of a downtrend).
* Use Max/Min Finder (Find price bars with max/min price among its nearest neighbours).
* Print K20% (Stochastic K value crossing 20%).
* Print K50% (Stochastic K value crossing 50%).
* Print K80% (Stochastic K value crossing 80%).
* Use Gap Finder (Find locations in chart where price bars are not touching or orverlapping).
* Use K-Max/K-Min Finder (Find local max/min points of stochastic14-1-3).
* Use CAH Finder (Find Close Above High where the bar close above the high of its previous bar).
* Use CBL Finder (Find Close Below Low where the bar close below the low of its previous bar).
* Forex: Draw -D High/Low levels (High and low price of the previous day).
* Forex: Draw D-Open level (Open price of today).
* Forex: Set mySession (in NY time) (Default from 8 pm to 2 am).
* Forex: Paint mySession (Brown background during mySession time interval).
* Server-side alerts (Notify you on smart phones and PCs of events occurring in the chart.
=================================================================================================
The script EasyBee59 v3.0 for TradingView is locked and protected. Please send 100 USD to unlock and use this script (free future upgrades and online supports and tutorials). For more informaton please contact the author (DrGraph or Nimit Chomnawang, PhD) via TradingView private chat
or in the comment field below.
=================================================================================================
How to install the script:
------------------------------
*Go to the bottom of this page and click on "Add to Favorite Scripts".
*Remove older version of the script by clicking on the "X" button behind the indicator line at the top left corner of the chart window.
*Open a new chart at and click on the "Indicators" tab.
*Click on the "Favorites" tab and choose "EasyBee59 v3.0".
*Right click anywhere on the graph, choose "Color Theme", the select "Dark".
*Right click anywhere on the graph, choose "Settings".
*In "Symbol" tab, set "Precesion" to 1/100 for stock price or 1/100000 for forex and set "Time Zone" to your local time.
*In "Status line" tab, uncheck "Indicator Arguments" and "Indicator Values".
*In "Scales" tab, check "Indicator Last Value Label".
*In "Events" tab, check "Show Dividends on Chart", "Show Splits on Chart" and "Show Earnings on Chart".
*At the bottom of settings window, click on "Template", "Save As...", then name this theme of graph setting for future call up such as "DrGraph chart setting".
*Click OK.
In the free Basic TradingView subscription, you can add two more indicators to the chart. That means you may add Stoch and Vol indicators with same parameters as those setup in EasyBee59 to your graph. DrGraph regularly publishes his educational ideas on using features provided in EasyBee59 for profitable investments. You can follow him for how to use the tools in trading stocks, forex, and crypto currencies.
Bitcoin Pine Script - Tom Hall StrategyThe Bitcoin script is a combination of crucial indicators that align across multiple timeframes.
How To Apply The Script:
Apply the script to your chart by clicking the ( Add to Favourite Scripts )\u2028
BSO = Buy Stop Order
The BSO symbol will appear once a valid trade opportunity presents itself.\u2028
Once the BSO candle closes it will provide you the parameters for a Buy Stop Order.
Orange Horizontal Line = Buy Stop Order Entry
Green Horizontal Line = Take Profit
Red Horizontal Line = Stop Loss
Key Information:
(1) The BSO is valid for a period of 24 hours, should price not trigger a live position the BSO must be cancelled.
(2) The horizontal lines that track price action are only relevant once a BSO candle has closed.
Alert System:
The alert system allows you to receive SMS / Email notifications in addition to a screen notification providing you information a BSO is required.
How To Apply The Alert System:
(1) Windows Press ( ALT + A ) / MacBook Press ( Option + A )
(2) Adjust the condition section from BTCUSD to Tom Hall Strategy\u2028
(3) Two crucial boxes will appear, The Lowest EMA and Buy Stop Order.
(4) Click create, this will allow you to receive Email / SMS notifications once a valid trade opportunity is available.\u2028
Profitable Edge:
Data From: 31st March 2013
Positions Executed: 76
Profitable Trades: 52
Losing Traders: 24\u2028
Risk / Reward: 1:1
Strike Rate / Profitable Edge: 68.43%
2013: 80% Profitable ( 10 Positions )
2014: 60% Profitable ( 5 Positions )
2015: 75% Profitable ( 16 Positions )
2016: 45% Profitable ( 20 Positions )
2017: 82.61% Profitable ( 23 Positions )
Style / Inputs:
All visible parameters can be adjusted to individual taste and preference.
uranium V ☭Now everyone has free access to the script until February 18th.
This script FULLY automated to open a trade by many strategies and scripts:
*Bollinger Bands
*RSI
*Fibo levels 61.8, 78.6
*NEEW 10.0
*Zones of support from the timeframe m15 and 1h
*Candle patterns
This script combines 3 strategies for different open trade conditions (sometimes opens can be the same)
Signals of different colors:
+Pink arrows I recommend to use only at specified intervals (from 4 to 8 UTC, and from 13 to 18 UTC). Expiration should be 5 minutes.
+Green arrows can be used always, but greater efficiency will be at specified intervals. Expiration should be 3 minutes.
+Blue stripes are the strongest signal, they can always be used, but greater efficiency will be at the specified intervals. Expiration should be 5 minutes.
For best results, I recommend opening deals on the following criteria:
the indicator is superimposed on the timeframe m1 and EURUSD.
+Opening trade only at the specified time, when the blue signal and the pink or green signal coincide, or the blue signal is preceded by a pink signal,
open trade at the place of closing the candle of the blue signal.
+Avoid strong non-characteristic price impulses, as well as news outlets.
+Do not open a trade with a next pink signal bar when there is a strong pulse.
+Do not open a trade with a green signal following a pink or blue signal, if the green close lowest or bigest than pink or blue signal.
+Do not use martingale strategy on failure, wait for the next signal.
+Use money management
By adhering to these conditions.
Yield Ratio ViewerUtilizes for yield and buy hold positions using the "Volume & Intraday Script" as well as the acculturation and distribution views script. The point of this is to backtest long holds for past strategies in a trading script. Math and logic still would need to be added with higher frequency to make this more efficient with the script that you would be utilizing for trading. This should work well for both cryptocurrency and forex trading as well as binary options bots that follow the modulus formula.
Forex session - Opening Range- Jayy fixed updatedOpening Range (OR) for Forex 24 hour regular session. This is not for regular market day sessions addressed in a separate script.
This script fixes four issues:
syntax error when code compiles
messed up opening range the day after a holiday Monday
flaky plotting of the opening range and targets that required page reloading
TradingView problems with starting forex session at 1700 hours EST/EDT when using certain securities eg FX_IDC currently (Jan 2017)
Additions in his code are more options for trading range
Time compensation option for some securities that incorrectly start sessions at 1200 hrs instead of 1700 hrs NY time
- this glitch is likely temporary but present when this script update was created
More opening range time period choices
Opening Range Targets:
Opening Range Targets as per Leaf_West
Targets are set at 127% , 162%, 200 %, 262 %, 362%, 423%, 685%, 1109% and 1794% and this can be traded intraday using methods described here charts-by-leaf.com I also have some Leaf West PDFs that describe how the targets are set and how they are traded. There are others that use opening range.
The Time Session Glitch and the Fix:
The script will correctly default to 1700 hrs to 1700hrs EDT/EST session for FXCM.
Strangely some securities appear to erroneously start their session at 1200 hrs ie. My guess is that they are somehow tied to GMT+0 instead of New York time (GMT+5). See this for yourself by selecting EURUSD using the FXCM exchange (FX:EURUSD) and then EURUSD from the IDC exchange (FX_IDC:EURUSD). The FX-IDC session opening range starts 5 hours
before it actually should at 1700 hrs EDT/EST. To correct for this I have implemented an automatic fix (default) and a user selected "5 hour time shift adjust. ment needed on some securities".
There is also a 4 hour time shift button which might be necessary when New York reverts from Eastern Standard Time
to Eastern Daylight Time (1 hour difference) in March (and then back again in November). In the default auto adjust mode you will need to select the 1 hour time shift. That is if this glitch still exists at that time.
I have looked at other scripts, other than my own and where the script is available, that need to use information about the opening bar and all have the same time shift issue
What are the choices for Opening Range?
The dialogue box offers the standard TradingView options.
Also where you see Pick Opening Range 1 to 12 hours , SET TO 0 To USE LINE ABOVE TO DETERMINE OR LENGTH
As the note says a number other than 0 will override the standard options from the line above
The dialogue box below in offers choices by hours 1 to 12. A number greater than 12 will still only give
720 minutes (12 hours) for the length of Opening Range.
What sessions within the FOREX time-frame are available?
The default is 1700 hours to 1700 hours EST/EDT
Check any one (only one) of the time periods to change the opening range period to suit.
New York opens at 8:00 am to 5:00 pm EST (EDT)
Tokyo opens at 7:00 pm to 4:00 am EST (EDT)
Sydney opens at 5:00 pm to 2:00 am EST (EDT)
London opens at 3:00 am to 12:00 noon EST (EDT)
There is a build your own session (click the button to select)
The two lines for inputting session times are almost identical except that the second line starts the be the same as each other.
The default for the build your own session is 2200 hours to 2200 hours. As of the time of publishing this plots EURUSD FX-IDC just right. The GMT+5 and GMT+4 do not apply to this selection.
See my comments above on this strange aberration.
The script originated from work done by Chris Moody. It has changed significantly but there are remnants of that script lurking within.
Script is free to all - that way you can see what is inside
Cheers Jayy
BACKTEST SCRIPT 0.999 ALPHATRADINGVIEW BACKTEST SCRIPT by Lionshare (c) 2015
THS IS A REAL ALTERNATIVE FOR LONG AWAITED TV NATIVE BACKTEST ENGINE.
READY FOR USE JUST RIGHT NOW.
For user provided trading strategy, executes the trades on pricedata history and continues to make it over live datafeed.
Calculates and (plots on premise) the next performance statistics:
profit - i.e. gross profit/loss.
profit_max - maximum value of gross profit/loss.
profit_per_trade - each trade's profit/loss.
profit_per_stop_trade - profit/loss per "stop order" trade.
profit_stop - gross profit/loss caused by stop orders.
profit_stop_p - percentage of "stop orders" profit/loss in gross profit/loss.
security_if_bought_back - size of security portfolio if bought back.
trades_count_conseq_profit - consecutive gain from profitable series.
trades_count_conseq_profit_max - maxmimum gain from consecutive profitable series achieved.
trades_count_conseq_loss - same as for profit, but for loss.
trades_count_conseq_loss_max - same as for profit, but for loss.
trades_count_conseq_won - number of trades, that were won consecutively.
trades_count_conseq_won_max - maximum number of trades, won consecutively.
trades_count_conseq_lost - same as for won trades, but for lost.
trades_count_conseq_lost_max - same as for won trades, but for lost.
drawdown - difference between local equity highs and lows.
profit_factor - profit-t-loss ratio.
profit_factor_r - profit(without biggest winning trade)-to-loss ratio.
recovery_factor - equity-to-drawdown ratio.
expected_value - median gain value of all wins and loss.
zscore - shows how much your seriality of consecutive wins/loss diverges from the one of normal distributed process. valued in sigmas. zscore of +3 or -3 sigmas means nonrandom realitonship of wins series-to-loss series.
confidence_limit - the limit of confidence in zscore result. values under 0.95 are considered inconclusive.
sharpe - sharpe ratio - shows the level of strategy stability. basically it is how the profit/loss is deviated around the expected value.
sortino - the same as sharpe, but is calculated over the negative gains.
k - Kelly criterion value, means the percentage of your portfolio, you can trade the scripted strategy for optimal risk management.
k_margin - Kelly criterion recalculated to be meant as optimal margin value.
DISCLAIMER :
The SCRIPT is in ALPHA stage. So there could be some hidden bugs.
Though the basic functionality seems to work fine.
Initial documentation is not detailed. There could be english grammar mistakes also.
NOW Working hard on optimizing the script. Seems, some heavier strategies (especially those using the multiple SECURITY functions) call TV processing power limitation errors.
Docs are here:
docs.google.com